SUBROUTINE WriteDataFileUnit &
!
(network, fileunit, init)
IMPLICIT NONE
! Arguments with intent (in):
TYPE (ObservationalNetwork), INTENT(IN) :: network
INTEGER (KIND = short), INTENT(IN) :: fileunit
!Optional arguments:
LOGICAL, OPTIONAL, INTENT(IN) :: init
!local declarations:
INTEGER (KIND = short) :: i
!----------------------------end of declarations-------------------------------
!initialize data section
IF ( PRESENT (init) ) THEN
IF (init) THEN
WRITE (fileunit,*) !blank line
WRITE (fileunit,'(a)') 'data' !data keyword
WRITE (fileunit,'(a)',advance='no') 'DateTime'
DO i = 1, network % countObs - 1
WRITE (fileunit,'(" ",a)', advance='no') TRIM (network % obs (i) % id)
END DO
WRITE(fileunit,'(" ",a)') TRIM (network % obs (network % countObs) % id)
RETURN !no need to go on
END IF
END IF
!write current data
timeString = network % time
WRITE (fileunit,'(a25)',advance = 'no') timeString
DO i = 1, network % countObs - 1
WRITE (fileunit,'(" ",e14.7)', advance = 'no') network % obs (i) % value
END DO
WRITE (fileunit,'(" ",e14.7)') network % obs (network % countObs) % value
RETURN
END SUBROUTINE WriteDataFileUnit